package com.ruoyi.xp.order.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 虾皮订单商品明细信息对象 t_xp_order_item
 * 
 * @author chdx
 * @date 2023-01-22
 */
public class OrderItem extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 表的id */
    private Long orderItemId;

    /** 订单号 */
    @Excel(name = "订单号")
    private String orderSn;

    /** 平台商品id */
    @Excel(name = "平台商品id")
    private Long itemId;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String itemName;

    /** 主货号 */
    @Excel(name = "主货号")
    private String sellerItemId;

    /** SKUID */
    @Excel(name = "SKUID")
    private Long modelId;

    /** SKU名称 */
    @Excel(name = "SKU名称")
    private String modelName;

    /** SKU货号 */
    @Excel(name = "SKU货号")
    private String sellerModelId;

    /** 采购单价 */
    @Excel(name = "采购单价")
    private BigDecimal purchasePrice;

    /** 采购总价 */
    @Excel(name = "采购总价")
    private BigDecimal purchaseTotalPrice;

    /** SKU数量 */
    @Excel(name = "SKU数量")
    private Long modelQuantityPurchased;

    /** SKU原始价格 */
    @Excel(name = "SKU原始价格")
    private BigDecimal modelOriginalPrice;

    /** SKU折后价格 */
    @Excel(name = "SKU折后价格")
    private BigDecimal modelDiscountedPrice;

    /** 是否批发 */
    @Excel(name = "是否批发")
    private String wholesale;

    /** 重量 */
    @Excel(name = "重量")
    private BigDecimal weight;

    /** 是否加购 */
    @Excel(name = "是否加购")
    private String addOnDeal;

    /** 是否主商品 */
    @Excel(name = "是否主商品")
    private String mainItem;

    /** 加购ID */
    @Excel(name = "加购ID")
    private Long addOnDealId;

    /** 营销类型 */
    @Excel(name = "营销类型")
    private String promotionType;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** 最后修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastUpdateDate;

    /** 最后修改人 */
    @Excel(name = "最后修改人")
    private Long lastUpdateBy;

    public void setOrderItemId(Long orderItemId) 
    {
        this.orderItemId = orderItemId;
    }

    public Long getOrderItemId() 
    {
        return orderItemId;
    }
    public void setOrderSn(String orderSn) 
    {
        this.orderSn = orderSn;
    }

    public String getOrderSn() 
    {
        return orderSn;
    }
    public void setItemId(Long itemId) 
    {
        this.itemId = itemId;
    }

    public Long getItemId() 
    {
        return itemId;
    }
    public void setItemName(String itemName) 
    {
        this.itemName = itemName;
    }

    public String getItemName() 
    {
        return itemName;
    }
    public void setSellerItemId(String sellerItemId) 
    {
        this.sellerItemId = sellerItemId;
    }

    public String getSellerItemId() 
    {
        return sellerItemId;
    }
    public void setModelId(Long modelId) 
    {
        this.modelId = modelId;
    }

    public Long getModelId() 
    {
        return modelId;
    }
    public void setModelName(String modelName) 
    {
        this.modelName = modelName;
    }

    public String getModelName() 
    {
        return modelName;
    }
    public void setSellerModelId(String sellerModelId) 
    {
        this.sellerModelId = sellerModelId;
    }

    public String getSellerModelId() 
    {
        return sellerModelId;
    }
    public void setPurchasePrice(BigDecimal purchasePrice) 
    {
        this.purchasePrice = purchasePrice;
    }

    public BigDecimal getPurchasePrice() 
    {
        return purchasePrice;
    }
    public void setPurchaseTotalPrice(BigDecimal purchaseTotalPrice) 
    {
        this.purchaseTotalPrice = purchaseTotalPrice;
    }

    public BigDecimal getPurchaseTotalPrice() 
    {
        return purchaseTotalPrice;
    }
    public void setModelQuantityPurchased(Long modelQuantityPurchased) 
    {
        this.modelQuantityPurchased = modelQuantityPurchased;
    }

    public Long getModelQuantityPurchased() 
    {
        return modelQuantityPurchased;
    }
    public void setModelOriginalPrice(BigDecimal modelOriginalPrice) 
    {
        this.modelOriginalPrice = modelOriginalPrice;
    }

    public BigDecimal getModelOriginalPrice() 
    {
        return modelOriginalPrice;
    }
    public void setModelDiscountedPrice(BigDecimal modelDiscountedPrice) 
    {
        this.modelDiscountedPrice = modelDiscountedPrice;
    }

    public BigDecimal getModelDiscountedPrice() 
    {
        return modelDiscountedPrice;
    }
    public void setWholesale(String wholesale) 
    {
        this.wholesale = wholesale;
    }

    public String getWholesale() 
    {
        return wholesale;
    }
    public void setWeight(BigDecimal weight) 
    {
        this.weight = weight;
    }

    public BigDecimal getWeight() 
    {
        return weight;
    }
    public void setAddOnDeal(String addOnDeal) 
    {
        this.addOnDeal = addOnDeal;
    }

    public String getAddOnDeal() 
    {
        return addOnDeal;
    }
    public void setMainItem(String mainItem) 
    {
        this.mainItem = mainItem;
    }

    public String getMainItem() 
    {
        return mainItem;
    }
    public void setAddOnDealId(Long addOnDealId) 
    {
        this.addOnDealId = addOnDealId;
    }

    public Long getAddOnDealId() 
    {
        return addOnDealId;
    }
    public void setPromotionType(String promotionType) 
    {
        this.promotionType = promotionType;
    }

    public String getPromotionType() 
    {
        return promotionType;
    }
    public void setCreateDate(Date createDate) 
    {
        this.createDate = createDate;
    }

    public Date getCreateDate() 
    {
        return createDate;
    }
    public void setLastUpdateDate(Date lastUpdateDate) 
    {
        this.lastUpdateDate = lastUpdateDate;
    }

    public Date getLastUpdateDate() 
    {
        return lastUpdateDate;
    }
    public void setLastUpdateBy(Long lastUpdateBy) 
    {
        this.lastUpdateBy = lastUpdateBy;
    }

    public Long getLastUpdateBy() 
    {
        return lastUpdateBy;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("orderItemId", getOrderItemId())
            .append("orderSn", getOrderSn())
            .append("itemId", getItemId())
            .append("itemName", getItemName())
            .append("sellerItemId", getSellerItemId())
            .append("modelId", getModelId())
            .append("modelName", getModelName())
            .append("sellerModelId", getSellerModelId())
            .append("purchasePrice", getPurchasePrice())
            .append("purchaseTotalPrice", getPurchaseTotalPrice())
            .append("modelQuantityPurchased", getModelQuantityPurchased())
            .append("modelOriginalPrice", getModelOriginalPrice())
            .append("modelDiscountedPrice", getModelDiscountedPrice())
            .append("wholesale", getWholesale())
            .append("weight", getWeight())
            .append("addOnDeal", getAddOnDeal())
            .append("mainItem", getMainItem())
            .append("addOnDealId", getAddOnDealId())
            .append("promotionType", getPromotionType())
            .append("createDate", getCreateDate())
            .append("createBy", getCreateBy())
            .append("lastUpdateDate", getLastUpdateDate())
            .append("lastUpdateBy", getLastUpdateBy())
            .toString();
    }
}
